package com.core.zyyz.amc.modules.service.impl;

import java.util.List;
import java.util.Map;

import com.core.common.utils.uuid.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.core.zyyz.amc.modules.mapper.AmcCodeManageMapper;
import com.core.zyyz.amc.modules.domain.AmcCodeManage;
import com.core.zyyz.amc.modules.service.AmcCodeManageService;

/**
 * 功能编号管理Service业务层处理
 *
 * @author LiuFushun
 * @date 2024-11-05
 */
@Service
public class AmcCodeManageServiceImpl implements AmcCodeManageService {
    @Autowired
    private AmcCodeManageMapper amcCodeManageMapper;

    /**
     * 查询功能编号管理
     *
     * @param functionCode 功能编号管理主键
     * @return 功能编号管理
     */
    @Override
    public AmcCodeManage selectAmcCodeManageByFunctionCode(String functionCode)
    {
        return amcCodeManageMapper.selectAmcCodeManageByFunctionCode(functionCode);
    }

    /**
     * 查询功能编号管理
     *
     * @param codeManageId 功能编号管理主键
     * @return 功能编号管理
     */
    @Override
    public AmcCodeManage selectAmcCodeManageByCodeManageId(String codeManageId)
    {
        return amcCodeManageMapper.selectAmcCodeManageByCodeManageId(codeManageId);
    }

    /**
     * 查询功能编号管理列表
     *
     * @param amcCodeManage 功能编号管理
     * @return 功能编号管理
     */
    @Override
    public List<AmcCodeManage> selectAmcCodeManageList(AmcCodeManage amcCodeManage)
    {
        return amcCodeManageMapper.selectAmcCodeManageList(amcCodeManage);
    }

    /**
     * 新增功能编号管理
     *
     * @param amcCodeManage 功能编号管理
     * @return 结果
     */
    @Override
    public int insertAmcCodeManage(AmcCodeManage amcCodeManage)
    {
        amcCodeManage.setCodeManageId(UUID.randomUUID().toString());
        if("0".equals(amcCodeManage.getWhetherDimension())){
            amcCodeManage.setDimensionId("");
        }
        return amcCodeManageMapper.insertAmcCodeManage(amcCodeManage);
    }

    /**
     * 修改功能编号管理
     *
     * @param amcCodeManage 功能编号管理
     * @return 结果
     */
    @Override
    public int updateAmcCodeManage(AmcCodeManage amcCodeManage)
    {
        if("0".equals(amcCodeManage.getWhetherDimension())){
            amcCodeManage.setDimensionId("");
        }
        return amcCodeManageMapper.updateAmcCodeManage(amcCodeManage);
    }

    /**
     * 批量删除功能编号管理
     *
     * @param codeManageIds 需要删除的功能编号管理主键
     * @return 结果
     */
    @Override
    public int deleteAmcCodeManageByCodeManageIds(String[] codeManageIds)
    {
        return amcCodeManageMapper.deleteAmcCodeManageByCodeManageIds(codeManageIds);
    }

    /**
     * 删除功能编号管理信息
     *
     * @param codeManageId 功能编号管理主键
     * @return 结果
     */
    @Override
    public int deleteAmcCodeManageByCodeManageId(String codeManageId)
    {
        return amcCodeManageMapper.deleteAmcCodeManageByCodeManageId(codeManageId);
    }

    /**
     * 查询功能定义列表（下拉框内容）
     *
     * @param param-configType 用来区分base_business_node查的哪张表
     * @param param-functionName 页面搜索值
     * @return 功能页面配置主
     */
    @Override
    public List<AmcCodeManage> queryFunctionList(AmcCodeManage param) {
        return amcCodeManageMapper.queryFunctionList(param);
    }

    @Override
    public Integer getSeq(Map<String ,Object> map) {
        return amcCodeManageMapper.getSeq(map);
    }

    @Override
    public Integer insertSysCodeFactory(Map<String, Object> map) {
        return amcCodeManageMapper.insertSysCodeFactory(map);
    }

    @Override
    public Integer updateCodeSeq(Map<String, Object> map) {
        return amcCodeManageMapper.updateCodeSeq(map);
    }
}
